Skip to content

Rewrite planoai CLI in Rust#842

Draft
adilhafeez wants to merge 20 commits intomainfrom
adilhafeez/rust-cli-rewrite
Draft

Rewrite planoai CLI in Rust#842
adilhafeez wants to merge 20 commits intomainfrom
adilhafeez/rust-cli-rewrite

Conversation

@adilhafeez
Copy link
Copy Markdown
Contributor

Summary

  • Adds crates/plano-cli/ as a full Rust rewrite of the Python CLI (cli/planoai/)
  • Binary name stays planoai, all subcommands ported: up, down, build, logs, cli-agent, trace, init
  • Config validation engine with JSON Schema validation, business rules, legacy conversion, and Tera template rendering
  • Native process management (PID files, health checks, binary downloads with progress bars)
  • Docker mode (container lifecycle, health checks, log streaming)
  • Trace system skeleton (in-memory store, daemon management)
  • CI updated: Python test/smoke jobs replaced with cargo test/build -p plano-cli

Test plan

  • cargo test -p plano-cli — 4 unit tests passing
  • cargo fmt — clean
  • cargo clippy -D warnings — clean
  • All 148 existing workspace tests still pass
  • CI passes on GitHub
  • Native smoke test passes with Rust binary

🤖 Generated with Claude Code

Add crates/plano-cli/ as a full Rust rewrite of the Python CLI.
Binary name: planoai. All subcommands ported: up, down, build,
logs, cli-agent, trace, init. Config validation and Tera template
rendering replace the Python config_generator. CI updated to use
cargo test/build instead of Python test jobs.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant